package com.mmy.service.car.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.mmy.dao.car.TCarOrderRepository;
import com.mmy.dao.car.VCarOrderRepository;
import com.mmy.domain.car.TCarOrder;
import com.mmy.domain.car.VCarOrder;
import com.mmy.service.car.TCarOrderService;

@Service
public class TCarOrderServiceImpl implements TCarOrderService {

	@Autowired
	TCarOrderRepository tCarOrderRepository;

	@Autowired
	VCarOrderRepository vCarOrderRepository;

	/**
	 * 查找全部
	 * 
	 * @param
	 * @return
	 */
	public List<VCarOrder> findAll() {
		// TODO Auto-generated method stub
		return vCarOrderRepository.findAll();
	}

	/**
	 * 获取最大流水号
	 * 
	 * @return 返回值说明 流水号
	 * @author 创建人 dingxd
	 * @date 创建日期 2020.11.17
	 */
	public int getMaxID() {
		// 流水号
		Object objCode = tCarOrderRepository.getMaxID();
		int iID = 0;
		if (objCode != null) {
			iID = Integer.parseInt(objCode.toString());
		}
		return iID;
	}

	/**
	 * 获取订单最大编码
	 * 
	 * @param 参数说明 计划单编码
	 * @return 返回值说明 订单编码
	 * @author 创建人 dingxd
	 * @date 创建日期 2020.11.17
	 */
	public String getMaxCode(int iPlanID) {
		// int 转 string
		String strPlanID = String.valueOf(iPlanID);
		// 返回订单最大编码
		Object objCode = tCarOrderRepository.getMaxCode(strPlanID);
		String strCode = "";
		if (objCode != null) {
			strCode = objCode.toString();
		}
		return strCode;
	}

	/**
	 * 新增
	 * 
	 * @param
	 * @return
	 */
	public void save(TCarOrder tCarOrder) {
		// TODO Auto-generated method stub
		tCarOrderRepository.save(tCarOrder);
	}

	/**
	 * 新增id
	 * 
	 * @param
	 * @return
	 */
	public void save(int id) {
		// TODO Auto-generated method stub
		tCarOrderRepository.save(id);
	}

	/**
	 * 删除
	 * 
	 * @param
	 * @return
	 */
	public void delCarOrder(List<Integer> lstID) {
		// TODO Auto-generated method stub
		tCarOrderRepository.delCarOrder(lstID);
	}

	/**
	 * 通过id查找
	 * 
	 * @param
	 * @return
	 */
	public TCarOrder findByID(int iID) {
		// TODO Auto-generated method stub
		return tCarOrderRepository.findByID(iID);
	}

	/**
	 * 通过CarID查找
	 * 
	 * @param
	 * @return
	 */
	public List<VCarOrder> findByCarID(int iCarID) {
		// TODO Auto-generated method stub
		return vCarOrderRepository.findByCarID(iCarID);
	}

	/**
	 * 出纳查询
	 * 
	 * @param
	 * @return
	 */
	public List<VCarOrder> findByCashierAndCarID(String strCashierState, int iCarID) {
		// TODO Auto-generated method stub
		return vCarOrderRepository.findByCashierAndCarID(strCashierState, iCarID);
	}

	/**
	 * 会计查询
	 * 
	 * @param
	 * @return
	 */
	public List<VCarOrder> findByAccountAndCarID(String strAccountState, int iCarID) {
		// TODO Auto-generated method stub
		return vCarOrderRepository.findByAccountAndCarID(strAccountState, iCarID);
	}

	public void saveAll(List<TCarOrder> lstCashier) {
		// TODO Auto-generated method stub
		tCarOrderRepository.saveAll(lstCashier);
	}

	/* 个人中心通过登录人获取车辆预留 */
	public List<TCarOrder> findByUserID(int userID) {
		// TODO Auto-generated method stub
		// return tCarOrderRepository.findByUserID(userID);
		return null;
	}

	/* 个人中心通过登录人获取车辆订单 */
	public List<TCarOrder> findByOrderUserID(int userID) {
		// TODO Auto-generated method stub
		// return tCarOrderRepository.findByOrderUserID(userID);
		return null;
	}

	/* 个人中心通过登录人获取车辆退单 */
	public List<TCarOrder> findByChargeBackUserID(int userID) {
		// TODO Auto-generated method stub
		// return tCarOrderRepository.findByChargeBackUserID(userID);
		return null;
	}
}
